package Villanos;

import javax.swing.ImageIcon;

import Interfaz.RepresentacionGrafica;
import Juego.Casillero;
import Juego.Tablero;
import Heroes.Heroe;
import TDAMapeo.InvalidKeyException;

public class VillanoComun extends Villano {

	/**
	 * Constructor de la clase
	 * @param starPos posicion inicial en x
	 * @param altura posicion inicial en y
	 * @param fila fila en la que se encuentra
	 * @param t Tablero
	 */
	
	public VillanoComun(int starPos, int altura, int fila, Tablero t)
	{
		super("VillanoComun", 300,4,20,10,5,fila,t);
		try {
			component=new RepresentacionGrafica(getTablero().getMapeo().get(nombre),starPos,altura+90);
		} catch (InvalidKeyException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		this.position=starPos;
		this.altura=altura+90;
	}
	
	
	public void habilidad(Heroe h) {
		// TODO Auto-generated method stub

	}

/**
 * Permite atacar a un heroe
 */
	@Override
	protected void atacar(Casillero h) {
		// TODO Auto-generated method stub
		component.setAtacando();
		component.setLocation(position,altura-40);
		while ((vida>0) && h.getEstaOcupado() && h.getHeroe().getVida()>0  && tablero.getVida()>0 )
		{	
			System.out.println("Entra en atacar de villano");
			atacarHeroe(h.getHeroe());
			try {
				Thread.sleep(5000/velocidad);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}		
			
		if ((h.getHeroe()!=null) && (h.getHeroe().getVida()<=0)){	
			h.getHeroe().eliminar();}
			component.setComun();
			component.setLocation(position,altura);
	} 
	

}
